package com.adv.crm.dao;

import com.adv.crm.beans.AccountBean;
import com.adv.crm.beans.AccountQueryBean;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * Created by 16978 on 2016/6/18.
 */
@Repository
public interface AccountDao {

    public Integer insertAccount(AccountBean accountBean);

    public Integer insertAccountByBatch(List<AccountBean> list);

    public List<AccountBean> getAccountsByPage(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize);

    public List<AccountBean> queryAccountsByPage(AccountQueryBean bean);

    public List<AccountBean> queryAccounts(AccountQueryBean bean);

    public List<AccountBean> queryAccountsByAccountIdList(AccountQueryBean bean);

    public Integer queryAccountsByAccountIdListCount(AccountQueryBean bean);

    public List<AccountBean> queryAccountsByAccountNameList(AccountQueryBean bean);

    public Integer queryAccountsByAccountNameListCount(AccountQueryBean bean);

    public AccountBean getAccountById(@Param("id") Long id);

    public Integer updateAccountById(AccountBean bean);

    public Integer getAccountCount();

    public Integer queryAccountCount(AccountQueryBean bean);
}
